利用pygame模块制作RPG游戏(一)
需要用到的第三方库:pygame
一.构造游戏的基本框架
1.首先准备好相应的游戏素材:背景,人物动作图片,音乐,音效等。 图片均用png格式,音乐音效均用ogg格式 2.主函数代码框架 (1)pygame.init() 初始化pygame,为使用硬件做准备 (2)游戏窗口创建: ①窗口屏幕: screen=pygame.display.set_mode((宽,高)) 二维元组 #创建出来的窗口左上角是(0,0)右下角是(宽,高) ②窗口标题:pygame.display.set_caption(“标题”) (3)载入图像与背景音乐: ①backgroud=pygame.image.load(r"图像地址").convert_alpha() 创建一个surface对象,“.convert_alpha()”保留png图片的alpha通道信息 ②pygame.mixer.music.load(“xx.ogg”) 载入ogg格式音乐 ③pygame.mixer.music.set_volume(音量) 设置音量 (数值0到1.0) ④pygame.mixer.music.play() 播放音乐 (4)创建时钟对象:fps=pygame.time.Clock() 可以控制游戏循环频率 (5)while True框架 : 游戏运行的主循环,每一次循环即为一帧,每一帧的图像移动变换,键盘鼠标事件,屏幕刷新都在此框架中实现 (6)显示图像:screen.blit(surface对象,位置元组):将surface对象的左上角放置在指定位置 (7)刷新屏幕:pygame.display.flip() 将屏幕重新刷新为无图像显示,否则前一帧的图像会和后一帧的图像同时显示 (8)设定帧率:fps.tick(帧数) 设定帧数,设定循环以每秒多少帧运行
import pygame
def main():
pygame.init()
fps=pygame.time.Clock()
screen=pygame.display.set_mode((1240,825))
pygame.display.set_caption("RPG游戏")
backgroud=pygame.image.load(r"H:\Python自制游戏\pygame\14.RPG像素竖屏游戏开发\素材\地形\室内.png").convert_alpha()
music=pygame.mixer.music.load(r"H:\Python自制游戏\pygame\14.RPG像素竖屏游戏开发\素材\音乐\室内1.ogg")
pygame.mixer.music.set_volume(0.3)
pygame.mixer.music.play()
while True:
screen.blit(backgroud,(0,0))
pygame.display.flip()
fps.tick(60)
main()
程序运行结果如下: ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200317235206298.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0xleHByZXNz,size_16,color_FFFFFF,t_70)
二.事件和人物对象
1.准备人物每一帧动作图片(带有alpha通道)的素材 2.创建人物类 将所有动作图像创建surface对象
class Player():
def __init__():
self.rd0=pygame.image.load(r"H:\Python自制游戏\pygame\14.RPG像素竖屏游戏开发\素材\人物\link_rundown0.png").convert_alpha()
self.rd1=pygame.image.load(r"H:\Python自制游戏\pygame\14.RPG像素竖屏游戏开发\素材\人物\link_rundown1.png").convert_alpha()
self.rd2=pygame.image.load(r"H:\Python自制游戏\pygame\14.RPG像素竖屏游戏开发\素材\人物\link_rundown2.png").convert_alpha()
self.rd3=pygame.image.load(r"H:\Python自制游戏\pygame\14.RPG像素竖屏游戏开发\素材\人物\link_rundown3.png").convert_alpha()
self.rd4=pygame.image
|